void main(List<String> args) {}

// Dart中没有哪一个关键字是来定义接口的
// 没有这些关键字 interface/protocol
// 默认情况下所有的类都是隐式接口
// Dart只支持单继承
// 当将一个类当做接口使用的时候，那么实现这个接口的类，必须实现这个接口中所有的方法

class Runner {
  void running() {
    print("running");
  }
}

class Flyer {
  void flying() {
    print("flying");
  }
}

class People {
  void eating() {
    print("吃东西");
  }
}

class SuperMan extends People implements Runner, Flyer {
  @override
  void eating() {
    super.eating();
  }

  @override
  void running() {}
  @override
  void flying() {}
}

/* AI生成的代码 */
// 定义一个接口（通过抽象类）
abstract class Shape {
  void getArea(); // 抽象方法
  String getInfo(); // 另一个抽象方法
}

// 实现接口的类
class Rectangle implements Shape {
  @override
  void getArea() {
    // Rectangle的面积计算逻辑
  }

  @override
  String getInfo() {
    // Rectangle的信息获取逻辑
    return "我是一个矩形";
  }
}

// 另一个实现接口的类
class Circle implements Shape {
  @override
  void getArea() {
    // Circle的面积计算逻辑
  }

  @override
  String getInfo() {
    // Circle的信息获取逻辑
    return "我是一个圆形";
  }
}
